Normally, upon printing an image sensed by a digital camera, the following processes are required. That is, an image stored in the digital camera is read by a personal computer (to be referred to as a PC hereinafter), and is printed by a connected printer using an application running on the PC.
That is, the flow of image data is DSC→PC→printer, and possession of the PC is indispensable. Also, the PC must be started to print an image stored in a DSC.
In consideration of such situation, some proposals in which a DSC and a printer are directly connected, and a print instruction is issued on a display normally equipped on the DSC (to be referred to as photo direct print hereinafter) have already been made.
Merits of use of the photo direct print system are easy print without starting a PC and low system building cost since a PC is not indispensable. Upon connecting a DSC to a printer, a display normally equipped on the DSC is used as means for giving various instructions and, especially, for confirming an image to be printed. Hence, a printer does not require any special display used to confirm an image, and the cost can be further reduced.
Most of recent DSCs comprise versatile communication means used to connect a PC. Typically, a DSC comprises a USB (Universal Serial Bus). Upon connection using this USB, a communication is established while defining the DSC as a slave and the PC as a host. When viewed from the PC side, the DSC can be handled like a simple external storage device.
Upon building a direct print system by directly connecting a DSC to a printer using such USB, it is desired to use the DSC not only as a simple storage device but also as a user interface device as the system unlike the DSC for the PC.
Therefore, a printer must determine whether or not a connected device is a digital camera having such function. In other words, a printer must notify a digital camera that the connected printer has a direct print function.
However, since recent digital cameras have a USB interface, a digital camera can be physically connected to a printer. However, if a digital camera does not have the direct print function, uninterpretable information is sent to the digital camera, which cannot determine whether that information can be ignored or must be saved. If such information is saved for security, unnecessary data may remain stored.
When a DSC is directly connected to a printer, they exchange various kinds of information. In general, such two-way information exchange is achieved using commands. However, a plurality of pieces of information are often required to execute a given process.
Therefore, upon notifying one significant process or information, many commands must be exchanged, and the throughput as a whole inevitably deteriorates.
Especially, in an early stage of connection between the DSC and printer, the printer must notify the DSC of printer functions (manufacturer name, recordable paper sizes, layouts, availability of borderless print, and the like). In order to notify each of these functions using commands, commands corresponding to all kinds of functions must be defined in advance, and the number of times of exchange becomes huge. Even if commands are defined, they cannot cope with those for new functions, which may be added in the future.
Upon building a photo direct print system which directly connects a digital camera and printer, and prints images while reflecting the user's will, the present inventors tackled these problems as objects, and solved these problems.